

package com.hexinfo.dmpro.script.publish.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.validation.annotation.Validated;

import java.util.Date;

/**
 * 脚本发布版本
 *
 * @author Wang zhihao
 * @date 2023-09-13 18:16:07
 */
@Data
@Validated
@TableName("TD_SCRIPT_PUBLISH_VERSION")
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value = "脚本发布版本")
public class ScriptPublishVersionEntity extends Model<ScriptPublishVersionEntity> {
private static final long serialVersionUID = 1L;

    /**
     * 脚本发布版本ID
     */
    @TableId(type= IdType.ASSIGN_UUID)
    @ApiModelProperty(value="脚本发布版本ID")
    private String id;

    /**
     * 脚本发布版本名称
     */
    @ApiModelProperty(value="脚本发布版本名称")
    private String scriptPublishName;

    /**
     * 脚本打包任务ID
     */
    @ApiModelProperty(value="脚本打包任务ID")
    private String packTaskId;

    /**
     * 指定的集群
     */
    @ApiModelProperty(value="指定的集群")
    private String appointClusterId;

    /**
     * 指定的集群的名称
     */
    @ApiModelProperty(value="指定的集群的名称")
    @TableField(exist = false)
    private String appointClusterName;

    /**
     * 指定的集群的权重
     */
    @ApiModelProperty(value="指定的集群的权重")
    @TableField(exist = false)
    private Integer appointClusterWeight;

    /**
     * 上线日期
     */
    @ApiModelProperty(value="上线日期")
    private String onlineDate;

    /**
     * 需求编码
     */
    @ApiModelProperty(value="需求编码")
    private String demandCode;

    /**
     * 版本号
     */
    @ApiModelProperty(value="版本号")
    private String version;

    /**
     * 上线包文件名
     */
    @ApiModelProperty(value="上线包文件名")
    private String packageFileName;

    /**
     * 上线包文件路径
     */
    @ApiModelProperty(value="上线包文件路径")
    private String packageFilePath;

    /**
     * 总文件包路径
     */
    @ApiModelProperty(value="总文件包路径")
    private String masterPackagePath;

    /**
     * 创建人
     */
    @ApiModelProperty(value="创建人")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createTime;

    /**
     * 删除标识
     */
    @ApiModelProperty(value="删除标识")
    @TableField(fill = FieldFill.INSERT)
    private String del;

    /**
     * 脚本发布任务名称
     */
    @ApiModelProperty(value="脚本发布任务名称")
    @TableField(exist = false)
    private String scriptPackName;

}
